package com.niiwoo.activity.stage.service.notice;

import com.niiwoo.activity.stage.dto.request.notice.*;
import com.niiwoo.activity.stage.dto.response.notice.GetFristPageImgRespDTO;
import com.niiwoo.activity.stage.dto.response.notice.HomeBannerAndPopupRespDTO;
import com.niiwoo.activity.stage.dto.response.notice.HomeBannerPicListRespDTO;
import com.niiwoo.activity.stage.dto.response.notice.OnlineNoticeRespDTO;
import com.niiwoo.tripod.provider.dto.request.PageRequestDTO;
import com.niiwoo.tripod.provider.dto.response.PageResponseDTO;

import java.util.List;
/**
 * 
 * @author hh
 *
 */
public interface OnlineNoticeDubboService {

	/**
	 * 分页查询上线公告信息
	 * @param reqDTO
	 * @return
	 */
	PageResponseDTO<OnlineNoticeRespDTO> getPage(PageRequestDTO reqDTO);

	/**
	 * 新增修改上线公告
	 * @param reqDto
	 */
	void addOrUpdate(OnlineNoticeReqDTO reqDto);

	/**
	 * 删除上线公告
	 * @param ids
	 */
	void del(List<Long> ids);
	
    /**
     * 获取上线公告详情
     * @param id
     * @return
     */
	OnlineNoticeRespDTO getDetail(Long id);

	/**
	 * 获取最新的公告信息
	 * @return
	 */
	OnlineNoticeRespDTO getLatestNotice(Integer type);

	/**
	 * 获取弹窗广告和首页banner
	 * @return
	 */
	HomeBannerAndPopupRespDTO homeBannerAndPopupDetails(HomeBannerAndPopupReqDTO reqDTO);

	/**
	 * 获取启动页banner
	 * @param reqDTO
	 * @return
	 */
	GetFristPageImgRespDTO getFristPageImg(GetFristPageImgReqDTO reqDTO);

	/**
	 * 查询首页banner详情
	 * @param activityId
	 * @return
	 */
	default HomeBannerRespDTO homeBannerDetail(Integer activityId){return null;};

	default List<HomeBannerPicListRespDTO> investBannerDetails(InvestBannerReqDTO reqDTO){
	    return null;
    }

	/**
	 * 提现Banner
	 * @param reqDTO
	 * @return
	 */
	default List<HomeBannerPicListRespDTO> withdrawBannerDetails(WithdrawBannerReqDTO reqDTO){
		return null;
	}
	/**
	 * 发现Banner
	 * @param reqDTO
	 * @return
	 */
	default List<HomeBannerPicListRespDTO> findBannerDetails(FindBannerReqDTO reqDTO){
		return null;
	}
}
